<!--  -->
<template>
<div class=''>
  <el-upload
    action='http://linweiqin.cn:8001/v1/addimg/avatar'
    :show-file-list='false'
    :on-success='handleAvatarSuccess'
    :before-upload='beforeAvatarUpload'
  >
    <img v-if='imageUrl' :src='imageUrl' alt="">
    <i v-else class="el-icon-plus avatar-uploader-icon"></i>
  </el-upload>
</div>
</template>

<script>
//这里可以导入其他文件（比如：组件，工具js，第三方插件js，json文件，图片文件等等）
//例如：import 《组件名称》 from '《组件路径》';

export default {
//import引入的组件需要注入到对象中才能使用
components: {},
data() {
//这里存放数据
return {
  imageUrl: ''
};
},
//监听属性 类似于data概念
computed: {},
//监控data中的数据变化
watch: {},
//方法集合
methods: {
  handleAvatarSuccess: function (res){
    let imageUrl = "http://linweiqin.cn:8001/img/" + res.image_path
    this.imageUrl = imageUrl
  },
  beforeAvatarUpload: function (file){
    let size_M = file.size /1024 /1024
    let imageType = file.type.trim()
    let limit2M = size_M > 2 ? false : true
    if (!limit2M) {
      this.$message('上传文件不能超过2M')
    }
    let valid_image_type = true
    if (imageType == 'image/png' || imageType == 'image/jpeg'){
      valid_image_type = true
    } else {
      valid_image_type = false
      this.$message({
        type: 'warning',
        message: '上传文件的图片格式不正确！'
      })
    }
    return limit2M && valid_image_type
  }
},
//生命周期 - 创建完成（可以访问当前this实例）
created() {

},
//生命周期 - 挂载完成（可以访问DOM元素）
mounted() {

},
beforeCreate() {}, //生命周期 - 创建之前
beforeMount() {}, //生命周期 - 挂载之前
beforeUpdate() {}, //生命周期 - 更新之前
updated() {}, //生命周期 - 更新之后
beforeDestroy() {}, //生命周期 - 销毁之前
destroyed() {}, //生命周期 - 销毁完成
activated() {}, //如果页面有keep-alive缓存功能，这个函数会触发
}
</script>
<style  scoped>

</style>